namespace Sustainalytics.Entities
{
    using System;
    using System.Collections.Generic;

    public class SystemPortfolio : Portfolio
    {
        protected SystemPortfolio(string name, Guid[] accountIds)
            : this(Guid.NewGuid(), name, accountIds)
        {
        }

        protected SystemPortfolio(Guid id, string name, Guid[] accountIds)
        {
            this.Name = name;
            this.IsAutomatic = true;
            this.AccountIds = accountIds;
          
            this.Id = id;
        }


        protected SystemPortfolio()
        {
        }

        public ICollection<RelatedUniverse> RelatedUniverses
        {
            get;
            set;
        }

        public class RelatedUniverse
        {
            public RelatedUniverse(Guid id, string name)
            {
                this.Name = name;
                this.Id = id;
            }

            public Guid Id { get; set; }

            public string Name { get; set; }
        }
    }
}